/**
 * SPDX-License-Identifier: GPL-2.0-only
 *
 * This file is part of Nominatim. (https://nominatim.org)
 *
 * Copyright (C) 2022 by the Nominatim developer community.
 * For a full list of authors see the git log.
 */
	str_replace(buffer, &len, &changes, " national wildlife refuge area ", 31, " nwra ", 6, 0);
	str_replace(buffer, &len, &changes, " national recreation area ", 26, " nra ", 5, 0);
	str_replace(buffer, &len, &changes, " air national guard base ", 25, " angb ", 6, 0);
	str_replace(buffer, &len, &changes, " zhilishchien komplieks ", 24, " zh k ", 6, 0);
	str_replace(buffer, &len, &changes, " trung tam thuong mdhi ", 23, " tttm ", 6, 0);
	str_replace(buffer, &len, &changes, " poligono industrial ", 21, " pgind ", 7, 0);
	str_replace(buffer, &len, &changes, " trung hoc pho thong ", 21, " thpt ", 6, 0);
	str_replace(buffer, &len, &changes, " onze lieve vrouw e ", 20, " olv ", 5, 0);
	str_replace(buffer, &len, &changes, " strada provinciale ", 20, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, "onze lieve vrouw e ", 19, " olv ", 5, 0);
	str_replace(buffer, &len, &changes, " punto kilometrico ", 19, " pk ", 4, 0);
	str_replace(buffer, &len, &changes, " cong vien van hoa ", 19, " cvvh ", 6, 0);
	str_replace(buffer, &len, &changes, " can cu khong quan ", 19, " cckq ", 6, 0);
	str_replace(buffer, &len, &changes, "strada provinciale ", 19, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " strada regionale ", 18, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " strada comunale ", 17, " sc ", 4, 0);
	str_replace(buffer, &len, &changes, "strada regionale ", 17, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " trung hoc co so ", 17, " thcs ", 6, 0);
	str_replace(buffer, &len, &changes, " san bay quoc te ", 17, " sbqt ", 6, 0);
	str_replace(buffer, &len, &changes, " cong ty co phyn ", 17, " ctcp ", 6, 0);
	str_replace(buffer, &len, &changes, " khu cong nghiep ", 17, " kcn ", 5, 0);
	str_replace(buffer, &len, &changes, " air force base ", 16, " afb ", 5, 0);
	str_replace(buffer, &len, &changes, " strada statale ", 16, " ss ", 4, 0);
	str_replace(buffer, &len, &changes, " vien bcyo tang ", 16, " vbt ", 5, 0);
	str_replace(buffer, &len, &changes, "strada comunale ", 16, " sc ", 4, 0);
	str_replace(buffer, &len, &changes, " circunvalacion ", 16, " ccvcn ", 7, 0);
	str_replace(buffer, &len, &changes, " paseo maritimo ", 16, " psmar ", 7, 0);
	str_replace(buffer, &len, &changes, " wielkopolskie ", 15, " wlkp ", 6, 0);
	str_replace(buffer, &len, &changes, " national park ", 15, " np ", 4, 0);
	str_replace(buffer, &len, &changes, " middle school ", 15, " ms ", 4, 0);
	str_replace(buffer, &len, &changes, " international ", 15, " intl ", 6, 0);
	str_replace(buffer, &len, &changes, " burgermeister ", 15, " bgm ", 5, 0);
	str_replace(buffer, &len, &changes, " vuon quoc gia ", 15, " vqg ", 5, 0);
	str_replace(buffer, &len, &changes, " qucyng truong ", 15, " qt ", 4, 0);
	str_replace(buffer, &len, &changes, "strada statale ", 15, " ss ", 4, 0);
	str_replace(buffer, &len, &changes, " state highway ", 15, " sh ", 4, 0);
	str_replace(buffer, &len, &changes, "burgermeister ", 14, " bgm ", 5, 0);
	str_replace(buffer, &len, &changes, " right of way ", 14, " rowy ", 6, 0);
	str_replace(buffer, &len, &changes, " hauptbahnhof ", 14, " hbf ", 5, 0);
	str_replace(buffer, &len, &changes, " apartamentos ", 14, " aptos ", 7, 0);
	str_replace(buffer, &len, &changes, " wielkopolski ", 14, " wlkp ", 6, 0);
	str_replace(buffer, &len, &changes, " burgemeester ", 14, " bg ", 4, 0);
	str_replace(buffer, &len, &changes, " camino nuevo ", 14, " c n ", 5, 0);
	str_replace(buffer, &len, &changes, " camino hondo ", 14, " c h ", 5, 0);
	str_replace(buffer, &len, &changes, " urbanizacion ", 14, " urb ", 5, 0);
	str_replace(buffer, &len, &changes, " camino viejo ", 14, " c v ", 5, 0);
	str_replace(buffer, &len, &changes, " wielkopolska ", 14, " wlkp ", 6, 0);
	str_replace(buffer, &len, &changes, " wojewodztwie ", 14, " woj ", 5, 0);
	str_replace(buffer, &len, &changes, " county route ", 14, " cr ", 4, 0);
	str_replace(buffer, &len, &changes, " prolongacion ", 14, " prol ", 6, 0);
	str_replace(buffer, &len, &changes, " thoroughfare ", 14, " thor ", 6, 0);
	str_replace(buffer, &len, &changes, " san van dong ", 14, " svd ", 5, 0);
	str_replace(buffer, &len, &changes, " tong cong ty ", 14, " tct ", 5, 0);
	str_replace(buffer, &len, &changes, " khu nghi mat ", 14, " knm ", 5, 0);
	str_replace(buffer, &len, &changes, " nha thi dzu ", 13, " ntd ", 5, 0);
	str_replace(buffer, &len, &changes, " khu du lich ", 13, " kdl ", 5, 0);
	str_replace(buffer, &len, &changes, " demarcacion ", 13, " demar ", 7, 0);
	str_replace(buffer, &len, &changes, " cau ldhc bo ", 13, " clb ", 5, 0);
	str_replace(buffer, &len, &changes, " interchange ", 13, " intg ", 6, 0);
	str_replace(buffer, &len, &changes, " distributor ", 13, " dstr ", 6, 0);
	str_replace(buffer, &len, &changes, " state route ", 13, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " wojewodztwo ", 13, " woj ", 5, 0);
	str_replace(buffer, &len, &changes, " reservation ", 13, " res ", 5, 0);
	str_replace(buffer, &len, &changes, " monseigneur ", 13, " mgr ", 5, 0);
	str_replace(buffer, &len, &changes, " transversal ", 13, " trval ", 7, 0);
	str_replace(buffer, &len, &changes, " extrarradio ", 13, " extrr ", 7, 0);
	str_replace(buffer, &len, &changes, " high school ", 13, " hs ", 4, 0);
	str_replace(buffer, &len, &changes, " mazowieckie ", 13, " maz ", 5, 0);
	str_replace(buffer, &len, &changes, " residencial ", 13, " resid ", 7, 0);
	str_replace(buffer, &len, &changes, " cong truong ", 13, " ct ", 4, 0);
	str_replace(buffer, &len, &changes, " cooperativa ", 13, " coop ", 6, 0);
	str_replace(buffer, &len, &changes, " diseminado ", 12, " disem ", 7, 0);
	str_replace(buffer, &len, &changes, " barranquil ", 12, " bqllo ", 7, 0);
	str_replace(buffer, &len, &changes, " fire track ", 12, " ftrk ", 6, 0);
	str_replace(buffer, &len, &changes, " south east ", 12, " se ", 4, 0);
	str_replace(buffer, &len, &changes, " north east ", 12, " ne ", 4, 0);
	str_replace(buffer, &len, &changes, " university ", 12, " univ ", 6, 0);
	str_replace(buffer, &len, &changes, " south west ", 12, " sw ", 4, 0);
	str_replace(buffer, &len, &changes, " monasterio ", 12, " mtrio ", 7, 0);
	str_replace(buffer, &len, &changes, " vecindario ", 12, " vecin ", 7, 0);
	str_replace(buffer, &len, &changes, " carreterin ", 12, " ctrin ", 7, 0);
	str_replace(buffer, &len, &changes, " callejuela ", 12, " cjla ", 6, 0);
	str_replace(buffer, &len, &changes, " north-east ", 12, " ne ", 4, 0);
	str_replace(buffer, &len, &changes, " south-west ", 12, " sw ", 4, 0);
	str_replace(buffer, &len, &changes, " gebroeders ", 12, " gebr ", 6, 0);
	str_replace(buffer, &len, &changes, " serviceway ", 12, " swy ", 5, 0);
	str_replace(buffer, &len, &changes, " quadrangle ", 12, " qdgl ", 6, 0);
	str_replace(buffer, &len, &changes, " commandant ", 12, " cmdt ", 6, 0);
	str_replace(buffer, &len, &changes, " extramuros ", 12, " extrm ", 7, 0);
	str_replace(buffer, &len, &changes, " escalinata ", 12, " escal ", 7, 0);
	str_replace(buffer, &len, &changes, " north-west ", 12, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " bulevardul ", 12, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " particular ", 12, " parti ", 7, 0);
	str_replace(buffer, &len, &changes, " mazowiecka ", 12, " maz ", 5, 0);
	str_replace(buffer, &len, &changes, " mazowiecki ", 12, " maz ", 5, 0);
	str_replace(buffer, &len, &changes, " north west ", 12, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " industrial ", 12, " ind ", 5, 0);
	str_replace(buffer, &len, &changes, " costanilla ", 12, " cstan ", 7, 0);
	str_replace(buffer, &len, &changes, " khach sdhn ", 12, " ks ", 4, 0);
	str_replace(buffer, &len, &changes, " south-east ", 12, " se ", 4, 0);
	str_replace(buffer, &len, &changes, " phi truong ", 12, " pt ", 4, 0);
	str_replace(buffer, &len, &changes, " expressway ", 12, " exp ", 5, 0);
	str_replace(buffer, &len, &changes, " fondamenta ", 12, " f ta ", 6, 0);
	str_replace(buffer, &len, &changes, " apartments ", 12, " apts ", 6, 0);
	str_replace(buffer, &len, &changes, " cul de sac ", 12, " cds ", 5, 0);
	str_replace(buffer, &len, &changes, " corralillo ", 12, " crrlo ", 7, 0);
	str_replace(buffer, &len, &changes, " mitropolit ", 12, " mit ", 5, 0);
	str_replace(buffer, &len, &changes, " etorbidea ", 11, " etorb ", 7, 0);
	str_replace(buffer, &len, &changes, " ploshchad ", 11, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " cobertizo ", 11, " cbtiz ", 7, 0);
	str_replace(buffer, &len, &changes, " underpass ", 11, " upas ", 6, 0);
	str_replace(buffer, &len, &changes, " crossroad ", 11, " crd ", 5, 0);
	str_replace(buffer, &len, &changes, " fundatura ", 11, " fnd ", 5, 0);
	str_replace(buffer, &len, &changes, " foreshore ", 11, " fshr ", 6, 0);
	str_replace(buffer, &len, &changes, " parklands ", 11, " pkld ", 6, 0);
	str_replace(buffer, &len, &changes, " esplanade ", 11, " esp ", 5, 0);
	str_replace(buffer, &len, &changes, " centreway ", 11, " cnwy ", 6, 0);
	str_replace(buffer, &len, &changes, " formation ", 11, " form ", 6, 0);
	str_replace(buffer, &len, &changes, " explanada ", 11, " expla ", 7, 0);
	str_replace(buffer, &len, &changes, " viviendas ", 11, " vvdas ", 7, 0);
	str_replace(buffer, &len, &changes, " northeast ", 11, " ne ", 4, 0);
	str_replace(buffer, &len, &changes, " cong vien ", 11, " cv ", 4, 0);
	str_replace(buffer, &len, &changes, " northwest ", 11, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " buildings ", 11, " bldgs ", 7, 0);
	str_replace(buffer, &len, &changes, " errepidea ", 11, " err ", 5, 0);
	str_replace(buffer, &len, &changes, " extension ", 11, " ex ", 4, 0);
	str_replace(buffer, &len, &changes, " municipal ", 11, " mun ", 5, 0);
	str_replace(buffer, &len, &changes, " southeast ", 11, " se ", 4, 0);
	str_replace(buffer, &len, &changes, " sanatorio ", 11, " sanat ", 7, 0);
	str_replace(buffer, &len, &changes, " thanh pho ", 11, " tp ", 4, 0);
	str_replace(buffer, &len, &changes, " firetrail ", 11, " fit ", 5, 0);
	str_replace(buffer, &len, &changes, " santuario ", 11, " santu ", 7, 0);
	str_replace(buffer, &len, &changes, " southwest ", 11, " sw ", 4, 0);
	str_replace(buffer, &len, &changes, " autopista ", 11, " auto ", 6, 0);
	str_replace(buffer, &len, &changes, " president ", 11, " pres ", 6, 0);
	str_replace(buffer, &len, &changes, " rinconada ", 11, " rcda ", 6, 0);
	str_replace(buffer, &len, &changes, " kardinaal ", 11, " kard ", 6, 0);
	str_replace(buffer, &len, &changes, " plazoleta ", 11, " pzta ", 6, 0);
	str_replace(buffer, &len, &changes, " duong sat ", 11, " ds ", 4, 0);
	str_replace(buffer, &len, &changes, " trung tam ", 11, " tt ", 4, 0);
	str_replace(buffer, &len, &changes, " piazzetta ", 11, " pta ", 5, 0);
	str_replace(buffer, &len, &changes, " boardwalk ", 11, " bwlk ", 6, 0);
	str_replace(buffer, &len, &changes, " bulievard ", 11, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " luitenant ", 11, " luit ", 6, 0);
	str_replace(buffer, &len, &changes, " courtyard ", 11, " ctyd ", 6, 0);
	str_replace(buffer, &len, &changes, " reservoir ", 11, " res ", 5, 0);
	str_replace(buffer, &len, &changes, " bulevardu ", 11, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " community ", 11, " comm ", 6, 0);
	str_replace(buffer, &len, &changes, " concourse ", 11, " con ", 5, 0);
	str_replace(buffer, &len, &changes, " profiesor ", 11, " prof ", 6, 0);
	str_replace(buffer, &len, &changes, " promenade ", 11, " prom ", 6, 0);
	str_replace(buffer, &len, &changes, " gienieral ", 11, " ghien ", 7, 0);
	str_replace(buffer, &len, &changes, " puistikko ", 11, " pko ", 5, 0);
	str_replace(buffer, &len, &changes, " balneario ", 11, " balnr ", 7, 0);
	str_replace(buffer, &len, &changes, " carretera ", 11, " ctra ", 6, 0);
	str_replace(buffer, &len, &changes, " ingenieur ", 11, " ir ", 4, 0);
	str_replace(buffer, &len, &changes, " boulevard ", 11, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " deviation ", 11, " devn ", 6, 0);
	str_replace(buffer, &len, &changes, " hipodromo ", 11, " hipod ", 7, 0);
	str_replace(buffer, &len, &changes, " professor ", 11, " prof ", 6, 0);
	str_replace(buffer, &len, &changes, " triangle ", 10, " tri ", 5, 0);
	str_replace(buffer, &len, &changes, " dotsient ", 10, " dots ", 6, 0);
	str_replace(buffer, &len, &changes, " boundary ", 10, " bdy ", 5, 0);
	str_replace(buffer, &len, &changes, " salizada ", 10, " s da ", 6, 0);
	str_replace(buffer, &len, &changes, " trunkway ", 10, " tkwy ", 6, 0);
	str_replace(buffer, &len, &changes, " cinturon ", 10, " cint ", 6, 0);
	str_replace(buffer, &len, &changes, "president ", 10, " pres ", 6, 0);
	str_replace(buffer, &len, &changes, " military ", 10, " mil ", 5, 0);
	str_replace(buffer, &len, &changes, " jonkheer ", 10, " jhr ", 5, 0);
	str_replace(buffer, &len, &changes, " motorway ", 10, " mwy ", 5, 0);
	str_replace(buffer, &len, &changes, " steenweg ", 10, " stwg ", 6, 0);
	str_replace(buffer, &len, &changes, " crescent ", 10, " cr ", 4, 0);
	str_replace(buffer, &len, &changes, " kanunnik ", 10, " kan ", 5, 0);
	str_replace(buffer, &len, &changes, " koningin ", 10, " kon ", 5, 0);
	str_replace(buffer, &len, &changes, " crossing ", 10, " xing ", 6, 0);
	str_replace(buffer, &len, &changes, " callejon ", 10, " cjon ", 6, 0);
	str_replace(buffer, &len, &changes, " pasadizo ", 10, " pzo ", 5, 0);
	str_replace(buffer, &len, &changes, " crossway ", 10, " cowy ", 6, 0);
	str_replace(buffer, &len, &changes, " cottages ", 10, " cotts ", 7, 0);
	str_replace(buffer, &len, &changes, " mountain ", 10, " mtn ", 5, 0);
	str_replace(buffer, &len, &changes, " business ", 10, " bus ", 5, 0);
	str_replace(buffer, &len, &changes, " pierwszy ", 10, " 1 ", 3, 0);
	str_replace(buffer, &len, &changes, " pierwsza ", 10, " 1 ", 3, 0);
	str_replace(buffer, &len, &changes, " pierwsze ", 10, " 1 ", 3, 0);
	str_replace(buffer, &len, &changes, " barriada ", 10, " barda ", 7, 0);
	str_replace(buffer, &len, &changes, " entrance ", 10, " ent ", 5, 0);
	str_replace(buffer, &len, &changes, " causeway ", 10, " cway ", 6, 0);
	str_replace(buffer, &len, &changes, " generaal ", 10, " gen ", 5, 0);
	str_replace(buffer, &len, &changes, " driveway ", 10, " dvwy ", 6, 0);
	str_replace(buffer, &len, &changes, " township ", 10, " twp ", 5, 0);
	str_replace(buffer, &len, &changes, " stazione ", 10, " staz ", 6, 0);
	str_replace(buffer, &len, &changes, " broadway ", 10, " bway ", 6, 0);
	str_replace(buffer, &len, &changes, " alleyway ", 10, " alwy ", 6, 0);
	str_replace(buffer, &len, &changes, " quadrant ", 10, " qdrt ", 6, 0);
	str_replace(buffer, &len, &changes, " apeadero ", 10, " apdro ", 7, 0);
	str_replace(buffer, &len, &changes, " arboleda ", 10, " arb ", 5, 0);
	str_replace(buffer, &len, &changes, " escalera ", 10, " esca ", 6, 0);
	str_replace(buffer, &len, &changes, " rdhp hat ", 10, " rh ", 4, 0);
	str_replace(buffer, &len, &changes, " transito ", 10, " trans ", 7, 0);
	str_replace(buffer, &len, &changes, " ddhi hoc ", 10, " dh ", 4, 0);
	str_replace(buffer, &len, &changes, " travesia ", 10, " trva ", 6, 0);
	str_replace(buffer, &len, &changes, " barranco ", 10, " branc ", 7, 0);
	str_replace(buffer, &len, &changes, " namestie ", 10, " nam ", 5, 0);
	str_replace(buffer, &len, &changes, " viaducto ", 10, " vcto ", 6, 0);
	str_replace(buffer, &len, &changes, " convento ", 10, " cnvto ", 7, 0);
	str_replace(buffer, &len, &changes, " estacion ", 10, " estcn ", 7, 0);
	str_replace(buffer, &len, &changes, "puistikko ", 10, " pko ", 5, 0);
	str_replace(buffer, &len, &changes, " precinct ", 10, " pct ", 5, 0);
	str_replace(buffer, &len, &changes, " heiligen ", 10, " hl ", 4, 0);
	str_replace(buffer, &len, &changes, " edificio ", 10, " edifc ", 7, 0);
	str_replace(buffer, &len, &changes, " prazuela ", 10, " przla ", 7, 0);
	str_replace(buffer, &len, &changes, " thi trzn ", 10, " tt ", 4, 0);
	str_replace(buffer, &len, &changes, " ridgeway ", 10, " rgwy ", 6, 0);
	str_replace(buffer, &len, &changes, " riverway ", 10, " rvwy ", 6, 0);
	str_replace(buffer, &len, &changes, " corredor ", 10, " crrdo ", 7, 0);
	str_replace(buffer, &len, &changes, " passatge ", 10, " ptge ", 6, 0);
	str_replace(buffer, &len, &changes, " junction ", 10, " jnc ", 5, 0);
	str_replace(buffer, &len, &changes, " hospital ", 10, " hosp ", 6, 0);
	str_replace(buffer, &len, &changes, " highroad ", 10, " hrd ", 5, 0);
	str_replace(buffer, &len, &changes, " torrente ", 10, " trrnt ", 7, 0);
	str_replace(buffer, &len, &changes, " avinguda ", 10, " av ", 4, 0);
	str_replace(buffer, &len, &changes, " portillo ", 10, " ptilo ", 7, 0);
	str_replace(buffer, &len, &changes, " diagonal ", 10, " diag ", 6, 0);
	str_replace(buffer, &len, &changes, " buu dien ", 10, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " alqueria ", 10, " alque ", 7, 0);
	str_replace(buffer, &len, &changes, " poligono ", 10, " polig ", 7, 0);
	str_replace(buffer, &len, &changes, " roadside ", 10, " rdsd ", 6, 0);
	str_replace(buffer, &len, &changes, " glorieta ", 10, " gta ", 5, 0);
	str_replace(buffer, &len, &changes, " fundacul ", 10, " fdc ", 5, 0);
	str_replace(buffer, &len, &changes, " cao dang ", 10, " cd ", 4, 0);
	str_replace(buffer, &len, &changes, " rosebowl ", 10, " rsbl ", 6, 0);
	str_replace(buffer, &len, &changes, " complejo ", 10, " compj ", 7, 0);
	str_replace(buffer, &len, &changes, " carretil ", 10, " crtil ", 7, 0);
	str_replace(buffer, &len, &changes, " intrarea ", 10, " int ", 5, 0);
	str_replace(buffer, &len, &changes, " gran via ", 10, " g v ", 5, 0);
	str_replace(buffer, &len, &changes, " approach ", 10, " app ", 5, 0);
	str_replace(buffer, &len, &changes, " stradela ", 10, " sdla ", 6, 0);
	str_replace(buffer, &len, &changes, " conjunto ", 10, " cjto ", 6, 0);
	str_replace(buffer, &len, &changes, " arterial ", 10, " artl ", 6, 0);
	str_replace(buffer, &len, &changes, " plazuela ", 10, " plzla ", 7, 0);
	str_replace(buffer, &len, &changes, " frontage ", 10, " frtg ", 6, 0);
	str_replace(buffer, &len, &changes, " faubourg ", 10, " fg ", 4, 0);
	str_replace(buffer, &len, &changes, " mansions ", 10, " mans ", 6, 0);
	str_replace(buffer, &len, &changes, " turnpike ", 10, " tpk ", 5, 0);
	str_replace(buffer, &len, &changes, " piazzale ", 10, " p le ", 6, 0);
	str_replace(buffer, &len, &changes, " tieu hoc ", 10, " th ", 4, 0);
	str_replace(buffer, &len, &changes, " bulevard ", 10, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " sendera ", 9, " sedra ", 7, 0);
	str_replace(buffer, &len, &changes, " cutting ", 9, " cutt ", 6, 0);
	str_replace(buffer, &len, &changes, " cantina ", 9, " canti ", 7, 0);
	str_replace(buffer, &len, &changes, " cantera ", 9, " cantr ", 7, 0);
	str_replace(buffer, &len, &changes, " rotonda ", 9, " rtda ", 6, 0);
	str_replace(buffer, &len, &changes, " pasillo ", 9, " psllo ", 7, 0);
	str_replace(buffer, &len, &changes, " landing ", 9, " ldg ", 5, 0);
	str_replace(buffer, &len, &changes, " kolonel ", 9, " kol ", 5, 0);
	str_replace(buffer, &len, &changes, " cong ty ", 9, " cty ", 5, 0);
	str_replace(buffer, &len, &changes, " fairway ", 9, " fawy ", 6, 0);
	str_replace(buffer, &len, &changes, " highway ", 9, " hwy ", 5, 0);
	str_replace(buffer, &len, &changes, " lookout ", 9, " lkt ", 5, 0);
	str_replace(buffer, &len, &changes, " meander ", 9, " mr ", 4, 0);
	str_replace(buffer, &len, &changes, " carrera ", 9, " cra ", 5, 0);
	str_replace(buffer, &len, &changes, " station ", 9, " stn ", 5, 0);
	str_replace(buffer, &len, &changes, " kapitan ", 9, " kap ", 5, 0);
	str_replace(buffer, &len, &changes, " medical ", 9, " med ", 5, 0);
	str_replace(buffer, &len, &changes, " broeder ", 9, " br ", 4, 0);
	str_replace(buffer, &len, &changes, " poblado ", 9, " pbdo ", 6, 0);
	str_replace(buffer, &len, &changes, " impasse ", 9, " imp ", 5, 0);
	str_replace(buffer, &len, &changes, " gardens ", 9, " gdn ", 5, 0);
	str_replace(buffer, &len, &changes, " nha tho ", 9, " nt ", 4, 0);
	str_replace(buffer, &len, &changes, " nha hat ", 9, " nh ", 4, 0);
	str_replace(buffer, &len, &changes, " freeway ", 9, " fwy ", 5, 0);
	str_replace(buffer, &len, &changes, " trasera ", 9, " tras ", 6, 0);
	str_replace(buffer, &len, &changes, " portico ", 9, " prtco ", 7, 0);
	str_replace(buffer, &len, &changes, " terrace ", 9, " ter ", 5, 0);
	str_replace(buffer, &len, &changes, " heights ", 9, " hts ", 5, 0);
	str_replace(buffer, &len, &changes, " camping ", 9, " campg ", 7, 0);
	str_replace(buffer, &len, &changes, " callizo ", 9, " cllzo ", 7, 0);
	str_replace(buffer, &len, &changes, " footway ", 9, " ftwy ", 6, 0);
	str_replace(buffer, &len, &changes, " calzada ", 9, " czada ", 7, 0);
	str_replace(buffer, &len, &changes, " dominee ", 9, " ds ", 4, 0);
	str_replace(buffer, &len, &changes, " meadows ", 9, " mdws ", 6, 0);
	str_replace(buffer, &len, &changes, " sendero ", 9, " send ", 6, 0);
	str_replace(buffer, &len, &changes, " osiedle ", 9, " os ", 4, 0);
	str_replace(buffer, &len, &changes, " estrada ", 9, " estda ", 7, 0);
	str_replace(buffer, &len, &changes, " avenida ", 9, " av ", 4, 0);
	str_replace(buffer, &len, &changes, " zgornji ", 9, " zg ", 4, 0);
	str_replace(buffer, &len, &changes, " zgornje ", 9, " zg ", 4, 0);
	str_replace(buffer, &len, &changes, " zgornja ", 9, " zg ", 4, 0);
	str_replace(buffer, &len, &changes, " arrabal ", 9, " arral ", 7, 0);
	str_replace(buffer, &len, &changes, " espalda ", 9, " eslda ", 7, 0);
	str_replace(buffer, &len, &changes, " entrada ", 9, " entd ", 6, 0);
	str_replace(buffer, &len, &changes, " kleiner ", 9, " kl ", 4, 0);
	str_replace(buffer, &len, &changes, " kleines ", 9, " kl ", 4, 0);
	str_replace(buffer, &len, &changes, " viaduct ", 9, " via ", 5, 0);
	str_replace(buffer, &len, &changes, " roadway ", 9, " rdwy ", 6, 0);
	str_replace(buffer, &len, &changes, " strasse ", 9, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " spodnje ", 9, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " spodnji ", 9, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " spodnja ", 9, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " fabrica ", 9, " fca ", 5, 0);
	str_replace(buffer, &len, &changes, " muntele ", 9, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " maantee ", 9, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " srednje ", 9, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " unterer ", 9, " u ", 3, 0);
	str_replace(buffer, &len, &changes, " unteres ", 9, " u ", 3, 0);
	str_replace(buffer, &len, &changes, " plateau ", 9, " plat ", 6, 0);
	str_replace(buffer, &len, &changes, " srednji ", 9, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " empresa ", 9, " empr ", 6, 0);
	str_replace(buffer, &len, &changes, " angosta ", 9, " angta ", 7, 0);
	str_replace(buffer, &len, &changes, " costera ", 9, " coste ", 7, 0);
	str_replace(buffer, &len, &changes, " tinh lo ", 9, " tl ", 4, 0);
	str_replace(buffer, &len, &changes, " quoc lo ", 9, " ql ", 4, 0);
	str_replace(buffer, &len, &changes, " auf der ", 9, " a d ", 5, 0);
	str_replace(buffer, &len, &changes, " bulvari ", 9, " bl ", 4, 0);
	str_replace(buffer, &len, &changes, " ddhi lo ", 9, " dl ", 4, 0);
	str_replace(buffer, &len, &changes, " namesti ", 9, " nam ", 5, 0);
	str_replace(buffer, &len, &changes, " passeig ", 9, " pg ", 4, 0);
	str_replace(buffer, &len, &changes, " carrero ", 9, " cro ", 5, 0);
	str_replace(buffer, &len, &changes, " cortijo ", 9, " crtjo ", 7, 0);
	str_replace(buffer, &len, &changes, " san bay ", 9, " sb ", 4, 0);
	str_replace(buffer, &len, &changes, " riviera ", 9, " rvra ", 6, 0);
	str_replace(buffer, &len, &changes, " caddesi ", 9, " cd ", 4, 0);
	str_replace(buffer, &len, &changes, " andador ", 9, " andad ", 7, 0);
	str_replace(buffer, &len, &changes, " walkway ", 9, " wkwy ", 6, 0);
	str_replace(buffer, &len, &changes, " granden ", 9, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " grosser ", 9, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " grosses ", 9, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " reserve ", 9, " res ", 5, 0);
	str_replace(buffer, &len, &changes, " alameda ", 9, " alam ", 6, 0);
	str_replace(buffer, &len, &changes, " retreat ", 9, " rtt ", 5, 0);
	str_replace(buffer, &len, &changes, " acequia ", 9, " aceq ", 6, 0);
	str_replace(buffer, &len, &changes, " platsen ", 9, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " bahnhof ", 9, " bf ", 4, 0);
	str_replace(buffer, &len, &changes, " autovia ", 9, " autov ", 7, 0);
	str_replace(buffer, &len, &changes, " srednja ", 9, " sr ", 4, 0);
	str_replace(buffer, &len, &changes, " galeria ", 9, " gale ", 6, 0);
	str_replace(buffer, &len, &changes, " circuit ", 9, " cct ", 5, 0);
	str_replace(buffer, &len, &changes, " svingen ", 9, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " plassen ", 9, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " mirador ", 9, " mrdor ", 7, 0);
	str_replace(buffer, &len, &changes, " laneway ", 9, " lnwy ", 6, 0);
	str_replace(buffer, &len, &changes, " kolonia ", 9, " kol ", 5, 0);
	str_replace(buffer, &len, &changes, " outlook ", 9, " otlk ", 6, 0);
	str_replace(buffer, &len, &changes, " caravan ", 9, " cvn ", 5, 0);
	str_replace(buffer, &len, &changes, " osiedlu ", 9, " os ", 4, 0);
	str_replace(buffer, &len, &changes, " palacio ", 9, " palac ", 7, 0);
	str_replace(buffer, &len, &changes, " pantano ", 9, " pant ", 6, 0);
	str_replace(buffer, &len, &changes, " partida ", 9, " ptda ", 6, 0);
	str_replace(buffer, &len, &changes, " calleja ", 9, " cllja ", 7, 0);
	str_replace(buffer, &len, &changes, " mevrouw ", 9, " mevr ", 6, 0);
	str_replace(buffer, &len, &changes, " meester ", 9, " mr ", 4, 0);
	str_replace(buffer, &len, &changes, " pastoor ", 9, " past ", 6, 0);
	str_replace(buffer, &len, &changes, " prinses ", 9, " pr ", 4, 0);
	str_replace(buffer, &len, &changes, " bulevar ", 9, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " tollway ", 9, " tlwy ", 6, 0);
	str_replace(buffer, &len, &changes, "steenweg ", 9, " stwg ", 6, 0);
	str_replace(buffer, &len, &changes, " caserio ", 9, " csrio ", 7, 0);
	str_replace(buffer, &len, &changes, " mercado ", 9, " merc ", 6, 0);
	str_replace(buffer, &len, &changes, " alejach ", 9, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " kvartal ", 9, " kv ", 4, 0);
	str_replace(buffer, &len, &changes, " parkway ", 9, " pwy ", 5, 0);
	str_replace(buffer, &len, &changes, " passage ", 9, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " pathway ", 9, " pway ", 6, 0);
	str_replace(buffer, &len, &changes, " splaiul ", 9, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " soseaua ", 9, " sos ", 5, 0);
	str_replace(buffer, &len, &changes, " colonia ", 9, " col ", 5, 0);
	str_replace(buffer, &len, &changes, " wielkie ", 9, " wlk ", 5, 0);
	str_replace(buffer, &len, &changes, " trzecie ", 9, " 3 ", 3, 0);
	str_replace(buffer, &len, &changes, " llanura ", 9, " llnra ", 7, 0);
	str_replace(buffer, &len, &changes, " malecon ", 9, " malec ", 7, 0);
	str_replace(buffer, &len, &changes, " trzecia ", 9, " 3 ", 3, 0);
	str_replace(buffer, &len, &changes, " trailer ", 9, " trlr ", 6, 0);
	str_replace(buffer, &len, &changes, " cuadra ", 8, " cuadr ", 7, 0);
	str_replace(buffer, &len, &changes, " cty cp ", 8, " ctcp ", 6, 0);
	str_replace(buffer, &len, &changes, " paraje ", 8, " praje ", 7, 0);
	str_replace(buffer, &len, &changes, " parque ", 8, " pque ", 6, 0);
	str_replace(buffer, &len, &changes, " piazza ", 8, " p za ", 6, 0);
	str_replace(buffer, &len, &changes, " puerta ", 8, " pta ", 5, 0);
	str_replace(buffer, &len, &changes, " little ", 8, " lt ", 4, 0);
	str_replace(buffer, &len, &changes, " pueblo ", 8, " pblo ", 6, 0);
	str_replace(buffer, &len, &changes, " puente ", 8, " pnte ", 6, 0);
	str_replace(buffer, &len, &changes, " jardin ", 8, " jdin ", 6, 0);
	str_replace(buffer, &len, &changes, " granja ", 8, " granj ", 7, 0);
	str_replace(buffer, &len, &changes, " market ", 8, " mkt ", 5, 0);
	str_replace(buffer, &len, &changes, " pasaje ", 8, " psaje ", 7, 0);
	str_replace(buffer, &len, &changes, " rotary ", 8, " rty ", 5, 0);
	str_replace(buffer, &len, &changes, " corral ", 8, " crral ", 7, 0);
	str_replace(buffer, &len, &changes, " siding ", 8, " sdng ", 6, 0);
	str_replace(buffer, &len, &changes, " nucleo ", 8, " ncleo ", 7, 0);
	str_replace(buffer, &len, &changes, " muelle ", 8, " muell ", 7, 0);
	str_replace(buffer, &len, &changes, " carril ", 8, " crril ", 7, 0);
	str_replace(buffer, &len, &changes, " portal ", 8, " prtal ", 7, 0);
	str_replace(buffer, &len, &changes, " ramble ", 8, " rmbl ", 6, 0);
	str_replace(buffer, &len, &changes, " pocket ", 8, " pkt ", 5, 0);
	str_replace(buffer, &len, &changes, " chalet ", 8, " chlet ", 7, 0);
	str_replace(buffer, &len, &changes, " canton ", 8, " cant ", 6, 0);
	str_replace(buffer, &len, &changes, " ladera ", 8, " ldera ", 7, 0);
	str_replace(buffer, &len, &changes, " parade ", 8, " pde ", 5, 0);
	str_replace(buffer, &len, &changes, " dehesa ", 8, " dhsa ", 6, 0);
	str_replace(buffer, &len, &changes, " museum ", 8, " mus ", 5, 0);
	str_replace(buffer, &len, &changes, " middle ", 8, " mid ", 5, 0);
	str_replace(buffer, &len, &changes, " cuesta ", 8, " custa ", 7, 0);
	str_replace(buffer, &len, &changes, " gracht ", 8, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " virful ", 8, " vf ", 4, 0);
	str_replace(buffer, &len, &changes, " m tele ", 8, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " varful ", 8, " vf ", 4, 0);
	str_replace(buffer, &len, &changes, " str la ", 8, " sdla ", 6, 0);
	str_replace(buffer, &len, &changes, " arcade ", 8, " arc ", 5, 0);
	str_replace(buffer, &len, &changes, " strada ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " access ", 8, " accs ", 6, 0);
	str_replace(buffer, &len, &changes, " bajada ", 8, " bjada ", 7, 0);
	str_replace(buffer, &len, &changes, " veliki ", 8, " v ", 3, 0);
	str_replace(buffer, &len, &changes, "strasse ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " velike ", 8, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " untere ", 8, " u ", 3, 0);
	str_replace(buffer, &len, &changes, " velika ", 8, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " artery ", 8, " arty ", 6, 0);
	str_replace(buffer, &len, &changes, " avenue ", 8, " av ", 4, 0);
	str_replace(buffer, &len, &changes, " miasto ", 8, " m ", 3, 0);
	str_replace(buffer, &len, &changes, " bypass ", 8, " byp ", 5, 0);
	str_replace(buffer, &len, &changes, " placem ", 8, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " barrio ", 8, " bo ", 4, 0);
	str_replace(buffer, &len, &changes, " center ", 8, " ctr ", 5, 0);
	str_replace(buffer, &len, &changes, " bldngs ", 8, " bldgs ", 7, 0);
	str_replace(buffer, &len, &changes, " puerto ", 8, " pto ", 5, 0);
	str_replace(buffer, &len, &changes, " wielka ", 8, " wlk ", 5, 0);
	str_replace(buffer, &len, &changes, " tunnel ", 8, " tun ", 5, 0);
	str_replace(buffer, &len, &changes, " wielki ", 8, " wlk ", 5, 0);
	str_replace(buffer, &len, &changes, " bridge ", 8, " bri ", 5, 0);
	str_replace(buffer, &len, &changes, " trzeci ", 8, " 3 ", 3, 0);
	str_replace(buffer, &len, &changes, " veliko ", 8, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " quelle ", 8, " qu ", 4, 0);
	str_replace(buffer, &len, &changes, " acceso ", 8, " acces ", 7, 0);
	str_replace(buffer, &len, &changes, " bulvar ", 8, " bl ", 4, 0);
	str_replace(buffer, &len, &changes, " sokagi ", 8, " sk ", 4, 0);
	str_replace(buffer, &len, &changes, "platsen ", 8, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " stigen ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " brucke ", 8, " br ", 4, 0);
	str_replace(buffer, &len, &changes, " an der ", 8, " a d ", 5, 0);
	str_replace(buffer, &len, &changes, " thi xa ", 8, " tx ", 4, 0);
	str_replace(buffer, &len, &changes, " nordre ", 8, " ndr ", 5, 0);
	str_replace(buffer, &len, &changes, " rambla ", 8, " rbla ", 6, 0);
	str_replace(buffer, &len, &changes, " sondre ", 8, " sdr ", 5, 0);
	str_replace(buffer, &len, &changes, "quoc lo ", 8, " ql ", 4, 0);
	str_replace(buffer, &len, &changes, " phuong ", 8, " p ", 3, 0);
	str_replace(buffer, &len, &changes, " vastra ", 8, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " carrer ", 8, " c ", 3, 0);
	str_replace(buffer, &len, &changes, " oberes ", 8, " o ", 3, 0);
	str_replace(buffer, &len, &changes, " raitti ", 8, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " puisto ", 8, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " arroyo ", 8, " arry ", 6, 0);
	str_replace(buffer, &len, &changes, " penger ", 8, " pgr ", 5, 0);
	str_replace(buffer, &len, &changes, " oberer ", 8, " o ", 3, 0);
	str_replace(buffer, &len, &changes, " kleine ", 8, " kl ", 4, 0);
	str_replace(buffer, &len, &changes, " grosse ", 8, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, "granden ", 8, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " villas ", 8, " vlls ", 6, 0);
	str_replace(buffer, &len, &changes, " taival ", 8, " tvl ", 5, 0);
	str_replace(buffer, &len, &changes, " in der ", 8, " i d ", 5, 0);
	str_replace(buffer, &len, &changes, " centre ", 8, " ctr ", 5, 0);
	str_replace(buffer, &len, &changes, " drugie ", 8, " 2 ", 3, 0);
	str_replace(buffer, &len, &changes, " dokter ", 8, " dr ", 4, 0);
	str_replace(buffer, &len, &changes, " grange ", 8, " gra ", 5, 0);
	str_replace(buffer, &len, &changes, " doctor ", 8, " dr ", 4, 0);
	str_replace(buffer, &len, &changes, " vicolo ", 8, " v lo ", 6, 0);
	str_replace(buffer, &len, &changes, " kort e ", 8, " k ", 3, 0);
	str_replace(buffer, &len, &changes, " koning ", 8, " kon ", 5, 0);
	str_replace(buffer, &len, &changes, " straat ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " svieti ", 8, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " callej ", 8, " cjon ", 6, 0);
	str_replace(buffer, &len, &changes, " ground ", 8, " grnd ", 6, 0);
	str_replace(buffer, &len, &changes, " vereda ", 8, " vreda ", 7, 0);
	str_replace(buffer, &len, &changes, " chemin ", 8, " ch ", 4, 0);
	str_replace(buffer, &len, &changes, " street ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " strand ", 8, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " sainte ", 8, " ste ", 5, 0);
	str_replace(buffer, &len, &changes, " camino ", 8, " cno ", 5, 0);
	str_replace(buffer, &len, &changes, " garden ", 8, " gdn ", 5, 0);
	str_replace(buffer, &len, &changes, " follow ", 8, " folw ", 6, 0);
	str_replace(buffer, &len, &changes, " estate ", 8, " est ", 5, 0);
	str_replace(buffer, &len, &changes, " doktor ", 8, " d r ", 5, 0);
	str_replace(buffer, &len, &changes, " subway ", 8, " sbwy ", 6, 0);
	str_replace(buffer, &len, &changes, " ulitsa ", 8, " ul ", 4, 0);
	str_replace(buffer, &len, &changes, " square ", 8, " sq ", 4, 0);
	str_replace(buffer, &len, &changes, " towers ", 8, " twrs ", 6, 0);
	str_replace(buffer, &len, &changes, "plassen ", 8, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " county ", 8, " co ", 4, 0);
	str_replace(buffer, &len, &changes, " brazal ", 8, " brzal ", 7, 0);
	str_replace(buffer, &len, &changes, " circus ", 8, " crcs ", 6, 0);
	str_replace(buffer, &len, &changes, "svingen ", 8, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " rampla ", 8, " rampa ", 7, 0);
	str_replace(buffer, &len, &changes, " bloque ", 8, " blque ", 7, 0);
	str_replace(buffer, &len, &changes, " circle ", 8, " cir ", 5, 0);
	str_replace(buffer, &len, &changes, " island ", 8, " is ", 4, 0);
	str_replace(buffer, &len, &changes, " common ", 8, " comm ", 6, 0);
	str_replace(buffer, &len, &changes, " ribera ", 8, " rbra ", 6, 0);
	str_replace(buffer, &len, &changes, " sector ", 8, " sect ", 6, 0);
	str_replace(buffer, &len, &changes, " rincon ", 8, " rcon ", 6, 0);
	str_replace(buffer, &len, &changes, " van de ", 8, " vd ", 4, 0);
	str_replace(buffer, &len, &changes, " corner ", 8, " cnr ", 5, 0);
	str_replace(buffer, &len, &changes, " subida ", 8, " sbida ", 7, 0);
	str_replace(buffer, &len, &changes, " banda ", 7, " b ", 3, 0);
	str_replace(buffer, &len, &changes, " bulev ", 7, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " barro ", 7, " bo ", 4, 0);
	str_replace(buffer, &len, &changes, " cllon ", 7, " cjon ", 6, 0);
	str_replace(buffer, &len, &changes, " p zza ", 7, " p za ", 6, 0);
	str_replace(buffer, &len, &changes, " drugi ", 7, " 2 ", 3, 0);
	str_replace(buffer, &len, &changes, " druga ", 7, " 2 ", 3, 0);
	str_replace(buffer, &len, &changes, " placu ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " aleji ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " aleja ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " aleje ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " stary ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " stara ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " dolny ", 7, " dln ", 5, 0);
	str_replace(buffer, &len, &changes, " dolna ", 7, " dln ", 5, 0);
	str_replace(buffer, &len, &changes, " gorne ", 7, " gn ", 4, 0);
	str_replace(buffer, &len, &changes, " gorna ", 7, " gn ", 4, 0);
	str_replace(buffer, &len, &changes, " stare ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " gorny ", 7, " gn ", 4, 0);
	str_replace(buffer, &len, &changes, " ulicy ", 7, " ul ", 4, 0);
	str_replace(buffer, &len, &changes, " ulica ", 7, " ul ", 4, 0);
	str_replace(buffer, &len, &changes, " o l v ", 7, " olv ", 5, 0);
	str_replace(buffer, &len, &changes, " plein ", 7, " pln ", 5, 0);
	str_replace(buffer, &len, &changes, " markt ", 7, " mkt ", 5, 0);
	str_replace(buffer, &len, &changes, " lange ", 7, " l ", 3, 0);
	str_replace(buffer, &len, &changes, " viale ", 7, " v le ", 6, 0);
	str_replace(buffer, &len, &changes, "gracht ", 7, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " prins ", 7, " pr ", 4, 0);
	str_replace(buffer, &len, &changes, "straat ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " plass ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " sving ", 7, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " gaten ", 7, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " veien ", 7, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " vliet ", 7, " vlt ", 5, 0);
	str_replace(buffer, &len, &changes, " dolne ", 7, " dln ", 5, 0);
	str_replace(buffer, &len, &changes, " b dul ", 7, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " sodra ", 7, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " norra ", 7, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " gamla ", 7, " gla ", 5, 0);
	str_replace(buffer, &len, &changes, " grand ", 7, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " vagen ", 7, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " gatan ", 7, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " ostra ", 7, " o ", 3, 0);
	str_replace(buffer, &len, &changes, "vastra ", 7, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " cadde ", 7, " cd ", 4, 0);
	str_replace(buffer, &len, &changes, " duong ", 7, " d ", 3, 0);
	str_replace(buffer, &len, &changes, " sokak ", 7, " sk ", 4, 0);
	str_replace(buffer, &len, &changes, " plats ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, "stigen ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " vayla ", 7, " vla ", 5, 0);
	str_replace(buffer, &len, &changes, "taival ", 7, " tvl ", 5, 0);
	str_replace(buffer, &len, &changes, " sveti ", 7, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " aukio ", 7, " auk ", 5, 0);
	str_replace(buffer, &len, &changes, " sveta ", 7, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, " cesta ", 7, " c ", 3, 0);
	str_replace(buffer, &len, &changes, " piata ", 7, " pta ", 5, 0);
	str_replace(buffer, &len, &changes, " aleea ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " kaari ", 7, " kri ", 5, 0);
	str_replace(buffer, &len, &changes, "penger ", 7, " pgr ", 5, 0);
	str_replace(buffer, &len, &changes, " ranta ", 7, " rt ", 4, 0);
	str_replace(buffer, &len, &changes, " rinne ", 7, " rn ", 4, 0);
	str_replace(buffer, &len, &changes, "raitti ", 7, " r ", 3, 0);
	str_replace(buffer, &len, &changes, "puisto ", 7, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " polku ", 7, " p ", 3, 0);
	str_replace(buffer, &len, &changes, " porta ", 7, " pta ", 5, 0);
	str_replace(buffer, &len, &changes, " ponte ", 7, " p te ", 6, 0);
	str_replace(buffer, &len, &changes, " paseo ", 7, " po ", 4, 0);
	str_replace(buffer, &len, &changes, " fbrca ", 7, " fca ", 5, 0);
	str_replace(buffer, &len, &changes, " allee ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " cours ", 7, " crs ", 5, 0);
	str_replace(buffer, &len, &changes, "sainte ", 7, " ste ", 5, 0);
	str_replace(buffer, &len, &changes, "square ", 7, " sq ", 4, 0);
	str_replace(buffer, &len, &changes, " largo ", 7, " l go ", 6, 0);
	str_replace(buffer, &len, &changes, " wharf ", 7, " whrf ", 6, 0);
	str_replace(buffer, &len, &changes, " corte ", 7, " c te ", 6, 0);
	str_replace(buffer, &len, &changes, " corso ", 7, " c so ", 6, 0);
	str_replace(buffer, &len, &changes, " campo ", 7, " c po ", 6, 0);
	str_replace(buffer, &len, &changes, " santa ", 7, " sta ", 5, 0);
	str_replace(buffer, &len, &changes, " calle ", 7, " c ", 3, 0);
	str_replace(buffer, &len, &changes, " strip ", 7, " strp ", 6, 0);
	str_replace(buffer, &len, &changes, " alley ", 7, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " north ", 7, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " block ", 7, " blk ", 5, 0);
	str_replace(buffer, &len, &changes, " gully ", 7, " gly ", 5, 0);
	str_replace(buffer, &len, &changes, " sielo ", 7, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " brace ", 7, " br ", 4, 0);
	str_replace(buffer, &len, &changes, " ronde ", 7, " rnde ", 6, 0);
	str_replace(buffer, &len, &changes, " grove ", 7, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " break ", 7, " brk ", 5, 0);
	str_replace(buffer, &len, &changes, " roads ", 7, " rds ", 5, 0);
	str_replace(buffer, &len, &changes, " track ", 7, " trk ", 5, 0);
	str_replace(buffer, &len, &changes, " house ", 7, " ho ", 4, 0);
	str_replace(buffer, &len, &changes, " trail ", 7, " trl ", 5, 0);
	str_replace(buffer, &len, &changes, " mount ", 7, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " cross ", 7, " crss ", 6, 0);
	str_replace(buffer, &len, &changes, " beach ", 7, " bch ", 5, 0);
	str_replace(buffer, &len, &changes, " point ", 7, " pt ", 4, 0);
	str_replace(buffer, &len, &changes, " basin ", 7, " basn ", 6, 0);
	str_replace(buffer, &len, &changes, " green ", 7, " gn ", 4, 0);
	str_replace(buffer, &len, &changes, " plaza ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " lille ", 7, " ll ", 4, 0);
	str_replace(buffer, &len, &changes, " slope ", 7, " slpe ", 6, 0);
	str_replace(buffer, &len, &changes, " placa ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " place ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " shunt ", 7, " shun ", 6, 0);
	str_replace(buffer, &len, &changes, " saint ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " ulice ", 7, " ul ", 4, 0);
	str_replace(buffer, &len, &changes, " amble ", 7, " ambl ", 6, 0);
	str_replace(buffer, &len, &changes, " route ", 7, " rt ", 4, 0);
	str_replace(buffer, &len, &changes, " sound ", 7, " snd ", 5, 0);
	str_replace(buffer, &len, &changes, " store ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " front ", 7, " frnt ", 6, 0);
	str_replace(buffer, &len, &changes, " elbow ", 7, " elb ", 5, 0);
	str_replace(buffer, &len, &changes, " glade ", 7, " gl ", 4, 0);
	str_replace(buffer, &len, &changes, " south ", 7, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " round ", 7, " rnd ", 5, 0);
	str_replace(buffer, &len, &changes, " drive ", 7, " dr ", 4, 0);
	str_replace(buffer, &len, &changes, " croft ", 7, " cft ", 5, 0);
	str_replace(buffer, &len, &changes, " platz ", 7, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " ferry ", 7, " fy ", 4, 0);
	str_replace(buffer, &len, &changes, " ridge ", 7, " rdge ", 6, 0);
	str_replace(buffer, &len, &changes, " tanav ", 7, " tn ", 4, 0);
	str_replace(buffer, &len, &changes, " banan ", 7, " ba ", 4, 0);
	str_replace(buffer, &len, &changes, " quays ", 7, " qys ", 5, 0);
	str_replace(buffer, &len, &changes, " sankt ", 7, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " vkhod ", 7, " vkh ", 5, 0);
	str_replace(buffer, &len, &changes, " chase ", 7, " ch ", 4, 0);
	str_replace(buffer, &len, &changes, " vista ", 7, " vsta ", 6, 0);
	str_replace(buffer, &len, &changes, " rhein ", 7, " rh ", 4, 0);
	str_replace(buffer, &len, &changes, " court ", 7, " ct ", 4, 0);
	str_replace(buffer, &len, &changes, "brucke ", 7, " br ", 4, 0);
	str_replace(buffer, &len, &changes, " upper ", 7, " up ", 4, 0);
	str_replace(buffer, &len, &changes, " river ", 7, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " range ", 7, " rnge ", 6, 0);
	str_replace(buffer, &len, &changes, " lower ", 7, " lr ", 4, 0);
	str_replace(buffer, &len, &changes, " kalea ", 7, " k ", 3, 0);
	str_replace(buffer, &len, &changes, " crest ", 7, " crst ", 6, 0);
	str_replace(buffer, &len, &changes, " obere ", 7, " o ", 3, 0);
	str_replace(buffer, &len, &changes, " manor ", 7, " mnr ", 5, 0);
	str_replace(buffer, &len, &changes, " byway ", 7, " bywy ", 6, 0);
	str_replace(buffer, &len, &changes, " reach ", 7, " rch ", 5, 0);
	str_replace(buffer, &len, &changes, " copse ", 7, " cps ", 5, 0);
	str_replace(buffer, &len, &changes, "quelle ", 7, " qu ", 4, 0);
	str_replace(buffer, &len, &changes, " creek ", 7, " cr ", 4, 0);
	str_replace(buffer, &len, &changes, " close ", 7, " c ", 3, 0);
	str_replace(buffer, &len, &changes, " fort ", 6, " ft ", 4, 0);
	str_replace(buffer, &len, &changes, " apch ", 6, " app ", 5, 0);
	str_replace(buffer, &len, &changes, " mont ", 6, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " bdul ", 6, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, "saint ", 6, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " back ", 6, " bk ", 4, 0);
	str_replace(buffer, &len, &changes, " c le ", 6, " c ", 3, 0);
	str_replace(buffer, &len, &changes, "place ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " frwy ", 6, " fwy ", 5, 0);
	str_replace(buffer, &len, &changes, " quai ", 6, " qu ", 4, 0);
	str_replace(buffer, &len, &changes, " ally ", 6, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " m te ", 6, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, " lane ", 6, " ln ", 4, 0);
	str_replace(buffer, &len, &changes, "aukio ", 6, " auk ", 5, 0);
	str_replace(buffer, &len, &changes, " loop ", 6, " lp ", 4, 0);
	str_replace(buffer, &len, &changes, " line ", 6, " ln ", 4, 0);
	str_replace(buffer, &len, &changes, " alue ", 6, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " link ", 6, " lk ", 4, 0);
	str_replace(buffer, &len, &changes, " glde ", 6, " gl ", 4, 0);
	str_replace(buffer, &len, &changes, " alea ", 6, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " gate ", 6, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " intr ", 6, " int ", 5, 0);
	str_replace(buffer, &len, &changes, " gdns ", 6, " gdn ", 5, 0);
	str_replace(buffer, &len, &changes, " hird ", 6, " hrd ", 5, 0);
	str_replace(buffer, &len, &changes, " varf ", 6, " vf ", 4, 0);
	str_replace(buffer, &len, &changes, " virf ", 6, " vf ", 4, 0);
	str_replace(buffer, &len, &changes, " hgts ", 6, " hts ", 5, 0);
	str_replace(buffer, &len, &changes, " expy ", 6, " exp ", 5, 0);
	str_replace(buffer, &len, &changes, "markt ", 6, " mkt ", 5, 0);
	str_replace(buffer, &len, &changes, " bypa ", 6, " byp ", 5, 0);
	str_replace(buffer, &len, &changes, "o l v ", 6, " olv ", 5, 0);
	str_replace(buffer, &len, &changes, " cres ", 6, " cr ", 4, 0);
	str_replace(buffer, &len, &changes, " bdwy ", 6, " bway ", 6, 0);
	str_replace(buffer, &len, &changes, " csac ", 6, " cds ", 5, 0);
	str_replace(buffer, &len, &changes, " nowy ", 6, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " laan ", 6, " ln ", 4, 0);
	str_replace(buffer, &len, &changes, " crsg ", 6, " xing ", 6, 0);
	str_replace(buffer, &len, &changes, "vliet ", 6, " vlt ", 5, 0);
	str_replace(buffer, &len, &changes, " city ", 6, " cty ", 5, 0);
	str_replace(buffer, &len, &changes, "sving ", 6, " sv ", 4, 0);
	str_replace(buffer, &len, &changes, "plass ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, "gaten ", 6, " g ", 3, 0);
	str_replace(buffer, &len, &changes, "veien ", 6, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " gata ", 6, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " sint ", 6, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " caus ", 6, " cway ", 6, 0);
	str_replace(buffer, &len, &changes, " cove ", 6, " cv ", 4, 0);
	str_replace(buffer, &len, &changes, "plein ", 6, " pln ", 5, 0);
	str_replace(buffer, &len, &changes, " cswy ", 6, " cway ", 6, 0);
	str_replace(buffer, &len, &changes, " plac ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " nowa ", 6, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " kolo ", 6, " k ", 3, 0);
	str_replace(buffer, &len, &changes, " katu ", 6, " k ", 3, 0);
	str_replace(buffer, &len, &changes, " duze ", 6, " dz ", 4, 0);
	str_replace(buffer, &len, &changes, " blvd ", 6, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " p ta ", 6, " pta ", 5, 0);
	str_replace(buffer, &len, &changes, " maly ", 6, " ml ", 4, 0);
	str_replace(buffer, &len, &changes, " mala ", 6, " ml ", 4, 0);
	str_replace(buffer, &len, &changes, " bdge ", 6, " bri ", 5, 0);
	str_replace(buffer, &len, &changes, " nowe ", 6, " n ", 3, 0);
	str_replace(buffer, &len, &changes, " brdg ", 6, " bri ", 5, 0);
	str_replace(buffer, &len, &changes, " male ", 6, " ml ", 4, 0);
	str_replace(buffer, &len, &changes, " drwy ", 6, " dvwy ", 6, 0);
	str_replace(buffer, &len, &changes, " duza ", 6, " dz ", 4, 0);
	str_replace(buffer, &len, &changes, " utca ", 6, " u ", 3, 0);
	str_replace(buffer, &len, &changes, " east ", 6, " e ", 3, 0);
	str_replace(buffer, &len, &changes, " duzy ", 6, " dz ", 4, 0);
	str_replace(buffer, &len, &changes, "kaari ", 6, " kri ", 5, 0);
	str_replace(buffer, &len, &changes, " quan ", 6, " q ", 3, 0);
	str_replace(buffer, &len, &changes, " svwy ", 6, " swy ", 5, 0);
	str_replace(buffer, &len, &changes, " shwy ", 6, " sh ", 4, 0);
	str_replace(buffer, &len, &changes, " road ", 6, " rd ", 4, 0);
	str_replace(buffer, &len, &changes, "sankt ", 6, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " quay ", 6, " qy ", 4, 0);
	str_replace(buffer, &len, &changes, "plats ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " rise ", 6, " ri ", 4, 0);
	str_replace(buffer, &len, &changes, " berg ", 6, " bg ", 4, 0);
	str_replace(buffer, &len, &changes, " tcty ", 6, " tct ", 5, 0);
	str_replace(buffer, &len, &changes, " viad ", 6, " via ", 5, 0);
	str_replace(buffer, &len, &changes, " view ", 6, " vw ", 4, 0);
	str_replace(buffer, &len, &changes, " vdct ", 6, " via ", 5, 0);
	str_replace(buffer, &len, &changes, " vale ", 6, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " avda ", 6, " av ", 4, 0);
	str_replace(buffer, &len, &changes, " grad ", 6, " ghr ", 5, 0);
	str_replace(buffer, &len, &changes, " walk ", 6, " wlk ", 5, 0);
	str_replace(buffer, &len, &changes, " west ", 6, " w ", 3, 0);
	str_replace(buffer, &len, &changes, " yard ", 6, " yd ", 4, 0);
	str_replace(buffer, &len, &changes, " blok ", 6, " bl ", 4, 0);
	str_replace(buffer, &len, &changes, " terr ", 6, " ter ", 5, 0);
	str_replace(buffer, &len, &changes, " cmno ", 6, " cno ", 5, 0);
	str_replace(buffer, &len, &changes, " stra ", 6, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " thfr ", 6, " thor ", 6, 0);
	str_replace(buffer, &len, &changes, " turn ", 6, " tn ", 4, 0);
	str_replace(buffer, &len, &changes, " tpke ", 6, " tpk ", 5, 0);
	str_replace(buffer, &len, &changes, " burg ", 6, " bg ", 4, 0);
	str_replace(buffer, &len, &changes, "vayla ", 6, " vla ", 5, 0);
	str_replace(buffer, &len, &changes, "vagen ", 6, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " tori ", 6, " tr ", 4, 0);
	str_replace(buffer, &len, &changes, "gatan ", 6, " g ", 3, 0);
	str_replace(buffer, &len, &changes, "grand ", 6, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " pass ", 6, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " pkwy ", 6, " pwy ", 5, 0);
	str_replace(buffer, &len, &changes, " park ", 6, " pk ", 4, 0);
	str_replace(buffer, &len, &changes, "rinne ", 6, " rn ", 4, 0);
	str_replace(buffer, &len, &changes, " mtwy ", 6, " mwy ", 5, 0);
	str_replace(buffer, &len, &changes, " mndr ", 6, " mr ", 4, 0);
	str_replace(buffer, &len, &changes, " kyla ", 6, " kl ", 4, 0);
	str_replace(buffer, &len, &changes, " kuja ", 6, " kj ", 4, 0);
	str_replace(buffer, &len, &changes, "platz ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, "ranta ", 6, " rt ", 4, 0);
	str_replace(buffer, &len, &changes, " mile ", 6, " mi ", 4, 0);
	str_replace(buffer, &len, &changes, " pfad ", 6, " p ", 3, 0);
	str_replace(buffer, &len, &changes, " mews ", 6, " m ", 3, 0);
	str_replace(buffer, &len, &changes, "polku ", 6, " p ", 3, 0);
	str_replace(buffer, &len, &changes, " psge ", 6, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " plza ", 6, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, "ostra ", 6, " o ", 3, 0);
	str_replace(buffer, &len, &changes, "gamla ", 6, " gla ", 5, 0);
	str_replace(buffer, &len, &changes, " stig ", 6, " st ", 4, 0);
	str_replace(buffer, &len, &changes, "norra ", 6, " n ", 3, 0);
	str_replace(buffer, &len, &changes, "sodra ", 6, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " pike ", 6, " pk ", 4, 0);
	str_replace(buffer, &len, &changes, " dorf ", 6, " df ", 4, 0);
	str_replace(buffer, &len, &changes, " piaz ", 6, " p za ", 6, 0);
	str_replace(buffer, &len, &changes, " phwy ", 6, " pway ", 6, 0);
	str_replace(buffer, &len, &changes, "pfad ", 5, " p ", 3, 0);
	str_replace(buffer, &len, &changes, " mnt ", 5, " mt ", 4, 0);
	str_replace(buffer, &len, &changes, "gata ", 5, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " bhf ", 5, " bf ", 4, 0);
	str_replace(buffer, &len, &changes, " bad ", 5, " b ", 3, 0);
	str_replace(buffer, &len, &changes, "gate ", 5, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " zum ", 5, " z ", 3, 0);
	str_replace(buffer, &len, &changes, "stig ", 5, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " blv ", 5, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, "kuja ", 5, " kj ", 4, 0);
	str_replace(buffer, &len, &changes, " bul ", 5, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " str ", 5, " st ", 4, 0);
	str_replace(buffer, &len, &changes, "alue ", 5, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " cen ", 5, " ctr ", 5, 0);
	str_replace(buffer, &len, &changes, " ave ", 5, " av ", 4, 0);
	str_replace(buffer, &len, &changes, "kyla ", 5, " kl ", 4, 0);
	str_replace(buffer, &len, &changes, " ale ", 5, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " spl ", 5, " sp ", 4, 0);
	str_replace(buffer, &len, &changes, " all ", 5, " al ", 4, 0);
	str_replace(buffer, &len, &changes, " k s ", 5, " ks ", 4, 0);
	str_replace(buffer, &len, &changes, " aly ", 5, " al ", 4, 0);
	str_replace(buffer, &len, &changes, "dorf ", 5, " df ", 4, 0);
	str_replace(buffer, &len, &changes, " bvd ", 5, " bd ", 4, 0);
	str_replace(buffer, &len, &changes, " vag ", 5, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " iii ", 5, " 3 ", 3, 0);
	str_replace(buffer, &len, &changes, " tie ", 5, " t ", 3, 0);
	str_replace(buffer, &len, &changes, " sok ", 5, " sk ", 4, 0);
	str_replace(buffer, &len, &changes, "burg ", 5, " bg ", 4, 0);
	str_replace(buffer, &len, &changes, "katu ", 5, " k ", 3, 0);
	str_replace(buffer, &len, &changes, "berg ", 5, " bg ", 4, 0);
	str_replace(buffer, &len, &changes, "tori ", 5, " tr ", 4, 0);
	str_replace(buffer, &len, &changes, " kte ", 5, " k ", 3, 0);
	str_replace(buffer, &len, &changes, " gro ", 5, " gr ", 4, 0);
	str_replace(buffer, &len, &changes, " grn ", 5, " gn ", 4, 0);
	str_replace(buffer, &len, &changes, " gld ", 5, " gl ", 4, 0);
	str_replace(buffer, &len, &changes, " san ", 5, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " hse ", 5, " ho ", 4, 0);
	str_replace(buffer, &len, &changes, " gte ", 5, " g ", 3, 0);
	str_replace(buffer, &len, &changes, " rte ", 5, " rt ", 4, 0);
	str_replace(buffer, &len, &changes, " rue ", 5, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " che ", 5, " ch ", 4, 0);
	str_replace(buffer, &len, &changes, " pas ", 5, " ps ", 4, 0);
	str_replace(buffer, &len, &changes, " plz ", 5, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " pnt ", 5, " pt ", 4, 0);
	str_replace(buffer, &len, &changes, " pky ", 5, " pwy ", 5, 0);
	str_replace(buffer, &len, &changes, " pza ", 5, " pl ", 4, 0);
	str_replace(buffer, &len, &changes, " rvr ", 5, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " riv ", 5, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " lit ", 5, " lt ", 4, 0);
	str_replace(buffer, &len, &changes, " p k ", 5, " pk ", 4, 0);
	str_replace(buffer, &len, &changes, " lwr ", 5, " lr ", 4, 0);
	str_replace(buffer, &len, &changes, " low ", 5, " lr ", 4, 0);
	str_replace(buffer, &len, &changes, " sth ", 5, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " crk ", 5, " cr ", 4, 0);
	str_replace(buffer, &len, &changes, "pres ", 5, " pres ", 6, 1);
	str_replace(buffer, &len, &changes, "laan ", 5, " ln ", 4, 0);
	str_replace(buffer, &len, &changes, " bda ", 5, " b ", 3, 0);
	str_replace(buffer, &len, &changes, " vei ", 5, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " via ", 5, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " way ", 5, " wy ", 4, 0);
	str_replace(buffer, &len, &changes, " upr ", 5, " up ", 4, 0);
	str_replace(buffer, &len, &changes, " avd ", 5, " av ", 4, 0);
	str_replace(buffer, &len, &changes, " crt ", 5, " ct ", 4, 0);
	str_replace(buffer, &len, &changes, "stwg ", 5, " stwg ", 6, 1);
	str_replace(buffer, &len, &changes, "sint ", 5, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " v d ", 5, " vd ", 4, 0);
	str_replace(buffer, &len, &changes, " van ", 5, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " drv ", 5, " dr ", 4, 0);
	str_replace(buffer, &len, &changes, " tce ", 5, " ter ", 5, 0);
	str_replace(buffer, &len, &changes, " va ", 4, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " oa ", 4, " o ", 3, 0);
	str_replace(buffer, &len, &changes, " sa ", 4, " s ", 3, 0);
	str_replace(buffer, &len, &changes, " na ", 4, " n ", 3, 0);
	str_replace(buffer, &len, &changes, "bgm ", 4, " bgm ", 5, 1);
	str_replace(buffer, &len, &changes, " nw ", 4, " n ", 3, 0);
	str_replace(buffer, &len, &changes, "vag ", 4, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " im ", 4, " 1 ", 3, 0);
	str_replace(buffer, &len, &changes, "vla ", 4, " vla ", 5, 1);
	str_replace(buffer, &len, &changes, "gla ", 4, " gla ", 5, 1);
	str_replace(buffer, &len, &changes, " am ", 4, " a ", 3, 0);
	str_replace(buffer, &len, &changes, " ph ", 4, " p ", 3, 0);
	str_replace(buffer, &len, &changes, "rue ", 4, " r ", 3, 0);
	str_replace(buffer, &len, &changes, " ga ", 4, " g ", 3, 0);
	str_replace(buffer, &len, &changes, "ste ", 4, " ste ", 5, 1);
	str_replace(buffer, &len, &changes, "str ", 4, " st ", 4, 0);
	str_replace(buffer, &len, &changes, " cl ", 4, " c ", 3, 0);
	str_replace(buffer, &len, &changes, " vn ", 4, " v ", 3, 0);
	str_replace(buffer, &len, &changes, " gt ", 4, " g ", 3, 0);
	str_replace(buffer, &len, &changes, "vei ", 4, " v ", 3, 0);
	str_replace(buffer, &len, &changes, "vlt ", 4, " vlt ", 5, 1);
	str_replace(buffer, &len, &changes, " ce ", 4, " cv ", 4, 0);
	str_replace(buffer, &len, &changes, " ii ", 4, " 2 ", 3, 0);
	str_replace(buffer, &len, &changes, "pln ", 4, " pln ", 5, 1);
	str_replace(buffer, &len, &changes, "olv ", 4, " olv ", 5, 1);
	str_replace(buffer, &len, &changes, "mkt ", 4, " mkt ", 5, 1);
	str_replace(buffer, &len, &changes, "tvl ", 4, " tvl ", 5, 1);
	str_replace(buffer, &len, &changes, " ob ", 4, " o ", 3, 0);
	str_replace(buffer, &len, &changes, "pgr ", 4, " pgr ", 5, 1);
	str_replace(buffer, &len, &changes, " in ", 4, " 1 ", 3, 0);
	str_replace(buffer, &len, &changes, " mw ", 4, " m ", 3, 0);
	str_replace(buffer, &len, &changes, "kri ", 4, " kri ", 5, 1);
	str_replace(buffer, &len, &changes, "pko ", 4, " pko ", 5, 1);
	str_replace(buffer, &len, &changes, "auk ", 4, " auk ", 5, 1);
	str_replace(buffer, &len, &changes, "tie ", 4, " t ", 3, 0);
	str_replace(buffer, &len, &changes, " i ", 3, " 1 ", 3, 0);
